#!/usr/bin/env python
"""
# -*- coding: utf-8 -*-
# @Time    : 2020/9/17 23:03
# @Author  : AshJo
# @Desc    : os.walk() 方法
# @Filename: os_walk.py
# @Version : v1.0
"""

# os.walk() 方法用于通过在目录树中游走输出在目录中的文件名，向上或者向下。
#
# os.walk() 方法是一个简单易用的文件、目录遍历器，可以帮助我们高效的处理文件、目录方面的事情。


import os

g = os.walk(r'D:\VScode\Python\Project\Python_fullstack')
size = 0
for i in g:
    path, dir_lst, name_lst = i
    for name in name_lst:
        abs_path = os.path.join(path, name)
        size += os.path.getsize(abs_path)
print(size)


# 使用walk()计算文件夹的总大小

# def get_size(path, size=0):
#     for root, dirs, files in os.walk(path):
#         for f in files:
#             size += os.path.getsize(os.path.join(root, f))
#             print(root)
#             print(f)
#     return size


# os.walk()方法，默认返回一个迭代器对象
# dir_list = os.walk(path)
# print(dir_list)

# ret = get_size(r'D:\VScode\Python\Project\Python_fullstack')
# print(ret)
